Automatic Gesture Recognition For A Sensor System

ABSTRACT

A method for gesture recognition including detecting one or more gesture-related signals using the associated plurality of detection sensors; and evaluating a gesture detected from the one or more gesture-related signals using an automatic recognition technique to determine if the gesture corresponds to one of a predetermined set of gestures.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority from U.S. Provisional PatentApplication Ser. No. 61/684,039 filed Aug. 16, 2012, which is herebyincorporated by reference in its entirety as if fully set forth herein.

TECHNICAL FIELD

The present disclosure relates to methods and systems for sensorsystems, and in particular to automatic gesture recognition for suchsystems. More particularly, this disclosure relates to a gesturerecognition system that is invariant to translation and/or scaling ofthe gestures and for a relatively large distance between the hand/fingerand the sensor system.

BACKGROUND

Systems for touchless detection and recognition of gestures are known.Such systems may be based on capacitive (e.g., surface capacitive,projected capacitive, mutual capacitive, or self capacitive), infrared,optical imaging, dispersive signal, ultrasonic or acoustic pulserecognition sensor technology.

Capacitive sensor systems, for example, can be realized by generating analternating electrical field and measuring the potential difference(i.e., the voltage) obtained at a sensor electrode within the field.Depending on the implementation, a single electrode may be used, or atransmitting and one or more receiving electrodes may be used. Thevoltage at the sensor electrode(s) is a measure for the capacitancebetween the sensor electrode and its electrical environment. That is, itis influenced by objects like a human finger or a hand which may inparticular perform a gesture within the detection space provided by theelectrode arrangement. Further, from this voltage, for example, thedistance of a finger or the gesture may be deduced. This information canbe used for human-machine interfaces.

Given a three dimensional positioning system, the straightforward andmost high level approach for gesture detection is to take the x/yposition estimate as input to the automatic gesture recognition systemand use the z-distance for start/stop criteria. As the position estimateis the outcome of one or more stages in which the sensor data isprocessed (calibration, non linear relation of calibrated sensor valueand distance, position being trigonometric function of distances), andeach stage introduces extra uncertainty, using x/y/z estimate can bemore prone to errors than using data from earlier processing stages.

SUMMARY

These, and other, aspects of the disclosure will be better appreciatedand understood when considered in conjunction with the followingdescription and the accompanying drawings. It should be understood,however, that the following description, while indicating variousembodiments of the disclosure and numerous specific details thereof, isgiven by way of illustration and not of limitation. Many substitutions,modifications, additions and/or rearrangements may be made within thescope of the disclosure without departing from the spirit thereof, andthe disclosure includes all such substitutions, modifications, additionsand/or rearrangements.

A method for gesture recognition according to embodiments includesdetecting one or more gesture-related signals using the associatedplurality of detection sensors; and evaluating a gesture detected fromthe one or more gesture-related signals using an automatic recognitiontechnique to determine if the gesture corresponds to one of apredetermined set of gestures. In some embodiments, a start of thegesture is determined if the distance between the target object and atleast one sensor decreases and the distance between the target objectand at least one sensor increases, and a short term variance or anequivalent measure over a predetermined plurality of signal samples isless than a threshold. In some embodiments, a stop of a the gesture isdetermined if at a given time the distances between the target objectand all sensors decrease, and/or a short term variance or an equivalentmeasure over a predetermined plurality of signal samples is less than athreshold, and/or the signal changes are less than a predeterminedthreshold for a predetermined plurality of signal samples after thegiven time.

In some embodiments, each gesture is represented by one or more HiddenMarkov Models (HMM). In some embodiments, evaluating a gesture includesevaluating a probability measure for one or more HMMs. In someembodiments, the features to which the HMMs' observation matrices areassociated are non-quantized or quantized sensor signal levels, x/y/zposition, distances, direction, orientation, angles and/or 1^(st),2^(nd) or higher other derivatives of these with respect to time, or anycombination thereof. In some embodiments, the features are the 1^(st)derivatives of the sensor signal levels quantized to two quantizationlevels.

A system for gesture recognition according to embodiments includes asensor arrangement for detecting one or more gesture-related signalsusing the associated plurality of detection sensors; and a module forevaluating a gesture detected from the one or more gesture-relatedsignals using an automatic recognition technique to determine if thegesture corresponds to one of a predetermined set of gestures.

In some embodiments, a start of the gesture is determined if thedistance between the target object and at least one sensor decreases andthe distance between the target object and at least one sensor increasesand a short term variance or an equivalent measure over a predeterminedplurality of signal samples is less than a threshold. In someembodiments, a stop of the gesture is determined if at a given time, thedistances between the target object and all sensors decrease and/or ashort term variance or an equivalent measure over a predeterminedplurality of signal samples is less than a threshold, and/or the signalchanges are less than a predetermined threshold for a predeterminedplurality of signal samples after the given time.

A computer readable medium according to embodiments includes one or morenon-transitory machine readable program instructions for receiving oneor more gesture-related signals using a plurality of detection sensors;and evaluating a gesture detected from the one or more gesture-relatedsignals using an automatic recognition technique to determine if thegesture corresponds to one of a predetermined set of gestures.

In some embodiments, a start of a gesture is determined if the distancebetween the target object and at least one sensor decreases and thedistance between the target object and at least one sensor increases,and a short term variance or an equivalent measure over a predeterminedplurality of signal samples is less than a threshold. In someembodiments, a stop of the gesture is determined if at a given time, thedistances between the target object and all sensors decrease and/or ashort term variance or an equivalent measure over a predeterminedplurality of signal samples is less than a threshold, and/or the signalchanges are less than a predetermined threshold for a predeterminedplurality of signal samples after the given time.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings accompanying and forming part of this specification areincluded to depict certain aspects of the disclosure. It should be notedthat the features illustrated in the drawings are not necessarily drawnto scale. A more complete understanding of the disclosure and theadvantages thereof may be acquired by referring to the followingdescription, taken in conjunction with the accompanying drawings inwhich like reference numbers indicate like features and wherein:

FIG. 1 is a diagram schematically illustrating a keyboard including anexemplary capacitive sensing system.

FIG. 2 is a diagram illustrating the electrode layout for an exemplarycapacitive sensing system.

FIG. 3 illustrates the relationship between finger-to-electrode distanceand measurement value of electrode signals.

FIG. 4 illustrates exemplary defined gestures.

FIG. 5A illustrates an exemplary Hidden Markov Model observationprobability matrix for a check gesture.

FIG. 5B illustrates an exemplary check gesture.

FIG. 6A illustrates exemplary determination of a start event.

FIG. 6B illustrates an exemplary clockwise circular gesture.

FIG. 7 illustrates exemplary stop criteria.

FIG. 8 illustrates state diagrams and state transition probabilitymatrices of exemplary linear and circular Hidden Markov Models.

FIG. 9 illustrates initial state distributions and transition matricesfor exemplary linear and circular Hidden Markov Models.

FIG. 10 is a flowchart illustrating process flow according toembodiments.

FIG. 11 illustrates exemplary circle gesture and resulting featurevectors.

FIG. 12 illustrates exemplary test results of gesture recognitionaccording to embodiments.

FIG. 13 illustrates an exemplary system according to embodiments.

DETAILED DESCRIPTION

The disclosure and various features and advantageous details thereof areexplained more fully with reference to the exemplary, and thereforenon-limiting, embodiments illustrated in the accompanying drawings anddetailed in the following description. It should be understood, however,that the detailed description and the specific examples, whileindicating the preferred embodiments, are given by way of illustrationonly and not by way of limitation. Descriptions of known programmingtechniques, computer software, hardware, operating platforms andprotocols may be omitted so as not to unnecessarily obscure thedisclosure in detail. Various substitutions, modifications, additionsand/or rearrangements within the spirit and/or scope of the underlyinginventive concept will become apparent to those skilled in the art fromthis disclosure.

According to embodiments, systems are provided with a reliable automaticrecognition of predefined hand gestures performed in front of a sensorsystem with two or more sensor electrodes providing their measurementdata. According to embodiments, the recognition is invariant totranslation and/or scaling of the gestures and for a large range ofz-axis distances between finger/hand and the respective sensor system.According to various embodiments, a Hidden Markov recognizer withimproved feature extraction and gesture detection for hand gesturerecognition can be provided.

Although for sake of convenience, embodiments are described in thecontext of a capacitive sensor system, any suitable sensor system thatcan provide distance or depth information may be employed. Further,though embodiments are described in the context of a three dimensional(x/y/z) sensor system, the proposed method for gesture recognition isalso applicable to two dimensional sensor systems (z=0). Examples ofsuitable sensors systems include, but are not limited to, those based onresistive, capacitive (e.g., surface capacitive, projected capacitive,mutual capacitive, or self capacitive), surface acoustic wave, infrared,optical or video imaging, one or more photo diodes, dispersive signal,ultrasonic, and acoustic pulse recognition sensor technology. Thus, thefigures are exemplary only.

Turning now to the drawings, and with particular attention to FIG. 1, asensor configuration is shown and generally identified by the referencenumeral 100. More particularly, FIG. 1 illustrates a user input objectsuch as a human finger 102 over a PC keyboard 103 with an inbuilt sensorsystem, such as a capacitive sensor system. The regions 104 a-104 didentify the sensor electrodes' positions underneath the keys. Lines 106between the finger 102 and the rectangular areas 104 a-104 d indicatethe shortest paths from the fingertip to the sensor electrodes. Therectangular area 107 limited in x/y dimension by the regions 104 a-104 dis denoted as the ‘active area’, and the cuboid-shape space above theactive area 108 is denoted as the ‘active space’.

It is noted that, while illustrated as a sensor system embedded in astand-alone keyboard, embodiments may be employed with sensor systemsassociated with an electronic device that is itself a user interface orcomprises a user interface, such as a mobile phone, an mp3 player, aPDA, a tablet computer, a computer, a remote control, a radio, acomputer mouse, a touch-sensitive display, and a television. A userinput object may be anything like a stylus (e.g., a small pen-shapedinstrument) or a digital pen. A user input object in this sense may alsobe a user's hand or finger.

FIG. 2 illustrates the keyboard 103 with some of the keys removed,showing the sensor system in greater detail. In particular, shown is anunderlying printed circuit board carrying the sensor system with bottom(EB) 104 a, left (EL) 104 d, top (ET) 104 c, and right (ER) 104 belectrodes.

FIG. 3 qualitatively shows the magnitude of a sensor's measurement value(vertical axis) as a function of the distance between sensor electrodeand fingertip (horizontal axis). The larger the distance, the smallerthe measurement value. For equivalent embodiments of this invention, thesensor value can increase with the distance. The asymptotic offset 302for the distance growing towards infinity is generally unknown and mayalso change over time.

In some embodiments, the sensor system provides discrete timemeasurement values for each sensor electrode at a predetermined samplingrate f_s. Typically, in a pre-processing stage, the sensor signals arelow-pass filtered in order to match the frequency range of hand gestureswhich are typically up to f_max=<15-20 Hz, depending on the application,wherein f_s>2*f_max. Given these signals for one or more electrodes, thegoal is to provide reliable automatic recognition of hand gesturesperformed over the keyboard or the active area, respectively.

In FIG. 4, according to an embodiment, eight specific example gesturesare defined. However, according to other embodiments, other gestures maybe defined. In the example illustrated, the gestures are four “flicks,”i.e., fast linear finger movements in the four main directions (right402, left 404, up 406, down 408), circles clockwise 410 andcounter-clockwise 412, a ‘confirm’ or ‘check’ gesture 414, and a cancelgesture 416, which is a sequence of consecutive, short left<->rightmovements.

A common approach in pattern recognition such as automatic speechrecognition and hand-writing recognition is to use Hidden Markov Models(HMMs) and trellis computations for estimating the most likely of apre-defined set of phonemes, words or letters, respectively. A HMMλ:=(A,B,π) is a finite stochastic state machine with N states which canproduce M output symbols or “features”. It is described by threeparameters: The state transition probability distribution matrix A ofsize N×N, the N×M symbol probability distribution matrix B whichcontains the probability for each state-feature map, and the N×1 initialstate distribution vector π. A trellis is a graph which adds the timedimension to a state diagram and allows for efficient computations.Although the embodiments discussed herein relate to first order HMMs, inother embodiments, higher order HMMs may be used.

In gesture recognition, for example, each HMM represents a gesture. Agesture may be divided into gesture fragments whose features arerepresented by the states in its assigned HMM. From the sensor signalsdetected while performing a gesture, features are extracted, typicallyat equidistant discrete-time instances. Such features comprise, forexample, the non-quantized or quantized signal levels, x/y/z position,distances, direction, orientation, angles and/or 1^(st), 2^(nd) orhigher order derivatives of these with respect to time, or anycombination thereof. If, for example, the utilized feature is the firstderivative of the x/y position with respect to time, i.e., the x/yvelocity, then the feature sequence obtained while detecting a gestureis a sequence of x/y velocity vectors. The length of this sequencedepends on the temporal duration of the gesture. When different peopleperform the same gesture, e.g., a “check” gesture in front of a sensorsystem, the duration of the gesture, speed of movement and/or thegesture's shape may differ slightly. Hence there will also be variationsin the corresponding feature sequences.

An HMM can incorporate these variations as at each time instance it doesnot only represent a single feature, but a probability distribution overall possible feature vectors. In order to obtain these probabilitydistribution matrices B, as well as the probabilities for transitionsbetween its states, each HMM needs to be trained with the featuresequences of a so-called training gesture set. During the training theHMM probability distributions are optimized in order to maximize theconditional probability of the training sequences given this HMM. Hence,the HMM is representing the feature sequences of all gestures it wastrained with. The number of states N necessary for an HMM depends, amongothers, on the complexity of the corresponding gesture. As to eachstate, it belongs a single observation probability distribution (row inmatrix B), the more different features there are in a feature sequenceof a gesture, the more states are required to represent it. Additionaldetails on use of Hidden Markov Models in gesture recognition may befound in commonly-assigned, U.S. Pat. No. 8,280,732, titled “System andMethod for Multidimensional Gesture Analysis,” which is herebyincorporated by reference in its entirety as if fully set forth herein.

Depending on the application, different HMM model topologies arepossible, for example, linear models (often used in speech recognition,with state transitions only to the current or the next state) orcircular models (often used in image processing; the last state has anon-zero transition probability to the first state) as shown in FIG. 8.

According to embodiments, for gestures with a distinct start and endpoint like flicks 402, 404, 406, 408 and confirm gesture 414 (FIG. 4),linear models are preferred. For gestures with non-distinct start andendpoint like circles 410, 412 and the cancel gesture 414, circularmodels are preferred. In addition, fully connected models with non-zerotransition probabilities between all states can, for example, be usedfor a so-called “garbage” HMM for gestures that should be rejected.

A frequently used HMM initialization before training is shown in FIG. 9,revealing the linear and circular characteristic in the state transitionmatrices A. During the HMM training, the non-zero entries of the A and Bmatrices will change. However, the zero entries will remain as such, andhence the model topology, too.

Input to both a training algorithm, which optimizes the matrices A and Bfor each gesture, as well as to a recognition algorithm, are temporalsequences of features, where each sequence corresponds to one executionof a gesture.

The knowledge of the time of start and stop of a gesture may beimportant for the recognition performance. Various embodiments, then,use a combination of start/stop criteria and a signal feature which isvery simple, yet invariant to scaling and transition, and thus veryrobust, for use with (though not limited to) HMMs.

FIGS. 5A and 5B show an example of a feature sequence for a “check”gesture and exemplary sensors EB, EL,ET,ER, where the feature vectorconsists of the 1^(st) derivative of the distances between fingertip andthe four sensor electrodes with respect to time. Each column in thefeature sequence matrix in FIG. 5A corresponds to a discrete-timeinstance. For example, the value “−4.1” in position (2,2) of the matrixindicates a relatively fast moving away from electrode E2 at timeinstance 2, and at the same time the value “0.4” in row 4 indicates arelatively slow movement towards electrode E4.

For the detection of the start and stop of a gesture, the followingworking assumptions can be made: A) A gesture either begins whenentering the active space (or active area in the case of z=0) fromoutside, OR with the start of movement after a resting period within theactive space (i.e. the finger does not have to leave the active spacebetween gestures). B) A gesture ends when resting within the activespace or when leaving it, or when the probability for the performedgesture to be one of the pre-defined set of gestures exceeds athreshold.

As mentioned above, from these assumptions criteria for start and stopdetection are directly deduced.

Start detection:

A1) The distance between fingertip and at least one sensor increases ANDthe distance between fingertip and at least one sensor decreases (or thesignal level of at least one electrode increases AND the signal level ofat least one other electrode decreases). (Movement of the hand withinthe active space at a constant z-height always leads to a distanceincrease to at least one electrode and a distance decrease to at leastone other electrode.) For Z=0, the 3D recognition problem is a 2D touchgesture recognition problem. Detecting an increase or decrease mayinclude detecting a threshold distance or signal level change.

A2) The short-time variance or a similar measure of the sensor signalover, for example, 10 signal samples must exceed a threshold (finger ismoving sufficiently fast). If both criteria are fulfilledsimultaneously, the start of a gesture is assumed to be detected. Thestart detection can be validated by checking above (or similar) criteriaagain shortly after the detected gesture start. If the validation isnegative, the gesture recognition is aborted.

Stop detection:

B1) The hand to electrode distances increase for all electrodes (or thesignal levels of all sensors decrease) over, for example, nD=10 samples.(This is not possible for movement within the active space at a constantz-distance.)

B2) The short-time variance or a similar measure of the sensor signalover, for example, nV=10 signal samples must not exceed a threshold(finger is moving sufficiently slow).

B3) If criterion B1) or B2) is fulfilled at discrete time instance T_E,then the gesture end is detected to be at time T_E-nD or T_E-nV,respectively.

Gestures can be excluded from the set of possible gestures if the timebetween start and stop of a gesture is not within a predefined timeinterval.

FIG. 6A shows the determination of a start event for the clockwisecircle gesture shown in FIG. 6B, wherein the following criteria apply:A1) a signal level of >=1 electrode increases AND a signal level of >=1other electrode decreases (which corresponds to a finger moving withinthe active space). A2) A short time variance or a similar measure of thesensor signal exceeds a threshold (finger is moving sufficiently fast).

FIG. 7 shows the gesture stop detection as criterion B1) applies: Thesignal levels of all electrodes decrease (this corresponds to a fingerleaving active space).

FIG. 10 is a flowchart 1000 illustrating the overall gesture recognitionprocess including start/stop detection. Upon a start 1004 of theprocess, for each incoming signal sample (consisting of sensor valuesfrom all electrodes), it is first checked whether the gesturerecognition with computation of HMM probabilities is already running(ACTIVE=true) or not (ACTIVE=false) (step 1004). In the latter case, thestart criteria are evaluated (step 1008). If the start criteria arefulfilled (as determined at step 1022), then the ACTIVE flag is set‘true’ (step 1024) and the actual gesture recognition starts (step1016). The probability of exceeding the threshold is determined (step1020); if the criteria are fulfilled, the recognized gesture is output(step 1014) and ACTIVE is set to false (step 1018). Otherwise, theprocess ends (step 1026).

If ACTIVE is true for an incoming sample (step 1004), then the stopcriteria are evaluated (step 1006). If the stop criteria are fulfilled(step 1010), the gesture recognition is completed, its result evaluated(step 1012) and output (step 1014), and ACTIVE is set to false (step1018). Otherwise, gesture recognition proceeds (step 1016).

FIG. 11 shows an example for a finger drawing a clockwise circle atconstant z-distance above the active area, and the resulting featurevectors, being the change of signal level for all electrodes. In timestep 1, the finger moves towards the electrodes ER and EB, and away fromthe electrodes EL and ET.

This leads to an increase in the signal levels of the electrodes ER andEB, and a decrease in the signal levels of the electrodes EL and ET. Intime step 3 the finger still moves away from ET and towards EL, but nowaway from ER and towards EL. This leads to an increase in the signallevels of the electrodes EB and EL and to a decrease in the signals ofthe electrodes ET and ER, and so on.

According to some embodiments, for performance evaluation, the HMMs(i.e. each gesture) were trained with data from one set of people whoperformed each gesture a defined number of times. For the training ofHMMs, reference is made to L. R. Rabiner: “A tutorial on Hidden MarkovModels and selected applications in speech recognition”. Proceedings ofthe IEEE, Vol. 77 No. 2, February 1989.

To evaluate the recognition rate objectively, an additional test gesturedatabase was taken from another, disjunct set of people. The achievedgesture recognition rates (in percent) are shown in FIG. 12. The rows ofthe matrix show the performed gestures and the columns show therecognized gestures. The column “Rejected” shows the rejected gestures.The garbage model represents all unintended and not defined handmovements. It is trained with all the training data of all people of thefirst set of people, i.e. all their gestures. The column “Sum” shows thesum of the probabilities of all the recognized gestures and thereforemust be 100. For all defined gestures, recognition rates of at least 95%could be achieved. Many of the unrecognized gestures were rejected,which is advantageous, since a false detection of a different gesture isconsidered more inconvenient than a rejection.

The proposed method is not only limited to sensor systems with exactlyfour electrodes/sensors or the electrode layout as in FIG. 1 or 2. Itapplies to systems with any multitude of sensors, i.e. 2 up to infinity.For example, it can also be a system with only two electrodes, a leftelectrode EL and a right electrode ER, which are of round shape oranother shape.

Instead of comparing the short-time variance of the sensor signals witha threshold for each channel, it is also possible to compare a weightedsum of these variances with a single threshold or use any other measureof the signal representing active movement.

The various embodiments are applicable to any sensor system whosesensors provide distance dependent measurement data. Such systemsinclude capacitive and resistive touch sensors, ultrasonic sensors,radar, surface acoustic sensors. The disclosed embodiments are notlimited to gesture recognition using HMMs, but can also be used withDynamic Time Warping, Neural Networks or other automatic recognitiontechniques.

Turning now to FIG. 13, a block diagram illustrating a particularimplementation of a sensor system 1300 for gesture recognition includingstart/stop detection according to embodiments. The system of FIG. 13 maybe particularly useful in a capacitive sensing system. The system 1300includes a sensing controller 1301, sensing electrodes 1302, and a hostsystem 1303. The sensing electrodes 1302 may implement a configurationsuch as shown in FIG. 1. The host 1303 may be any system that can makeuse of touch sensor signals, such as cell phones, laptop computers, I/Odevices, light switches, coffee machines, medical input devices, and thelike.

In the example illustrated, a TX signal generator 1304 provides atransmitter signal V_(TX) to the transmit electrode TXD. Receiveelectrodes RX0-RX4 are received at signal conditioning modules 1306 forimplementing filtering, etc. The outputs of signal conditioning areprovided to ADCs 1307 and, via a bus 1308, to a signal processing unit1308. The signal processing unit 1308 may implement the functionality ofthe gesture recognition. Resulting outputs may be provided via 10 unit1318 to the host 1303.

The system may further include a variety of additional modules, such asinternal clock 1309, memory such as flash memory 1312, a voltagereference 1310, power management 1314, low-power wake-up 1316, resetcontrol 1322, and communication control 1320.

The following references provide additional information on the use ofHidden Markov Models:

-   L. E. Baum et al: “A maximization technique occurring in the    statistical analysis of probabilistic functions of Markov chains”,    Ann. Math. Statist. vol. 41. no. 1. pp. 164-171, 1970.-   E. Behrends: Introduction to Markov Chains, Viehweg Verlag, 2000.-   L. R. Rabiner: A tutorial on Hidden Markov Models and selected    applications in speech recognition”. Proceedings of the IEEE, Vol.    77 No. 2, February 1989.-   A. J. Viterbi: ‘Error bounds for convolutional codes and an    asymptotically optimum decoding algorithm”. IEEE Transactions on    Information Theory, Vol. 13, April 1967.-   Welch: “Hidden Markov Models and the Baum-Welch Algorithm”. IEEE    Information Theory Society Newsletter, December 2003.

Although the invention has been described with respect to specificembodiments thereof, these embodiments are merely illustrative, and notrestrictive of the invention. The description herein of illustratedembodiments of the invention, including the description in the Abstractand Summary, is not intended to be exhaustive or to limit the inventionto the precise forms disclosed herein (and in particular, the inclusionof any particular embodiment, feature or function within the Abstract orSummary is not intended to limit the scope of the invention to suchembodiment, feature or function). Rather, the description is intended todescribe illustrative embodiments, features and functions in order toprovide a person of ordinary skill in the art context to understand theinvention without limiting the invention to any particularly describedembodiment, feature or function, including any such embodiment featureor function described in the Abstract or Summary. While specificembodiments of, and examples for, the invention are described herein forillustrative purposes only, various equivalent modifications arepossible within the spirit and scope of the invention, as those skilledin the relevant art will recognize and appreciate. As indicated, thesemodifications may be made to the invention in light of the foregoingdescription of illustrated embodiments of the invention and are to beincluded within the spirit and scope of the invention. Thus, while theinvention has been described herein with reference to particularembodiments thereof, a latitude of modification, various changes andsubstitutions are intended in the foregoing disclosures, and it will beappreciated that in some instances some features of embodiments of theinvention will be employed without a corresponding use of other featureswithout departing from the scope and spirit of the invention as setforth. Therefore, many modifications may be made to adapt a particularsituation or material to the essential scope and spirit of theinvention.

Reference throughout this specification to “one embodiment”, “anembodiment”, or “a specific embodiment” or similar terminology meansthat a particular feature, structure, or characteristic described inconnection with the embodiment is included in at least one embodimentand may not necessarily be present in all embodiments. Thus, respectiveappearances of the phrases “in one embodiment”, “in an embodiment”, or“in a specific embodiment” or similar terminology in various placesthroughout this specification are not necessarily referring to the sameembodiment. Furthermore, the particular features, structures, orcharacteristics of any particular embodiment may be combined in anysuitable manner with one or more other embodiments. It is to beunderstood that other variations and modifications of the embodimentsdescribed and illustrated herein are possible in light of the teachingsherein and are to be considered as part of the spirit and scope of theinvention.

In the description herein, numerous specific details are provided, suchas examples of components and/or methods, to provide a thoroughunderstanding of embodiments of the invention. One skilled in therelevant art will recognize, however, that an embodiment may be able tobe practiced without one or more of the specific details, or with otherapparatus, systems, assemblies, methods, components, materials, parts,and/or the like. In other instances, well-known structures, components,systems, materials, or operations are not specifically shown ordescribed in detail to avoid obscuring aspects of embodiments of theinvention. While the invention may be illustrated by using a particularembodiment, this is not and does not limit the invention to anyparticular embodiment and a person of ordinary skill in the art willrecognize that additional embodiments are readily understandable and area part of this invention.

Any suitable programming language can be used to implement the routines,methods or programs of embodiments of the invention described herein,including C, C++, Java, assembly language, etc. Different programmingtechniques can be employed such as procedural or object oriented. Anyparticular routine can execute on a single computer processing device ormultiple computer processing devices, a single computer processor ormultiple computer processors. Data may be stored in a single storagemedium or distributed through multiple storage mediums, and may residein a single database or multiple databases (or other data storagetechniques). Although the steps, operations, or computations may bepresented in a specific order, this order may be changed in differentembodiments. In some embodiments, to the extent multiple steps are shownas sequential in this specification, some combination of such steps inalternative embodiments may be performed at the same time. The sequenceof operations described herein can be interrupted, suspended, orotherwise controlled by another process, such as an operating system,kernel, etc. The routines can operate in an operating system environmentor as stand-alone routines. Functions, routines, methods, steps andoperations described herein can be performed in hardware, software,firmware or any combination thereof.

Embodiments described herein can be implemented in the form of controllogic in software or hardware or a combination of both. The controllogic may be stored in an information storage medium, such as acomputer-readable medium, as a plurality of instructions adapted todirect an information processing device to perform a set of stepsdisclosed in the various embodiments. Based on the disclosure andteachings provided herein, a person of ordinary skill in the art willappreciate other ways and/or methods to implement the invention.

It is also within the spirit and scope of the invention to implement insoftware programming or code any of the steps, operations, methods,routines or portions thereof described herein, where such softwareprogramming or code can be stored in a computer-readable medium and canbe operated on by a processor to permit a computer to perform any of thesteps, operations, methods, routines or portions thereof describedherein. The invention may be implemented by using software programmingor code in one or more general purpose digital computers, by usingapplication specific integrated circuits, programmable logic devices,field programmable gate arrays, and so on. Optical, chemical,biological, quantum or nanoengineered systems, components and mechanismsmay be used. In general, the functions of the invention can be achievedby any means as is known in the art. For example, distributed, ornetworked systems, components and circuits can be used. In anotherexample, communication or transfer (or otherwise moving from one placeto another) of data may be wired, wireless, or by any other means.

A “computer-readable medium” may be any medium that can contain, store,communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, system ordevice. The computer readable medium can be, by way of example only butnot by limitation, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, system, device,propagation medium, or computer memory. Such computer-readable mediumshall generally be machine readable and include software programming orcode that can be human readable (e.g., source code) or machine readable(e.g., object code). Examples of non-transitory computer-readable mediacan include random access memories, read-only memories, hard drives,data cartridges, magnetic tapes, floppy diskettes, flash memory drives,optical data storage devices, compact-disc read-only memories, and otherappropriate computer memories and data storage devices. In anillustrative embodiment, some or all of the software components mayreside on a single server computer or on any combination of separateserver computers. As one skilled in the art can appreciate, a computerprogram product implementing an embodiment disclosed herein may compriseone or more non-transitory computer readable media storing computerinstructions translatable by one or more processors in a computingenvironment.

A “processor” includes any, hardware system, mechanism or component thatprocesses data, signals or other information. A processor can include asystem with a general-purpose central processing unit, multipleprocessing units, dedicated circuitry for achieving functionality, orother systems. Processing need not be limited to a geographic location,or have temporal limitations. For example, a processor can perform itsfunctions in “real-time,” “offline,” in a “batch mode,” etc. Portions ofprocessing can be performed at different times and at differentlocations, by different (or the same) processing systems.

As used herein, the terms “comprises,” “comprising,” “includes,”“including,” “has,” “having,” or any other variation thereof, areintended to cover a non-exclusive inclusion. For example, a process,product, article, or apparatus that comprises a list of elements is notnecessarily limited only those elements but may include other elementsnot expressly listed or inherent to such process, process, article, orapparatus.

Furthermore, the term “or” as used herein is generally intended to mean“and/or” unless otherwise indicated. For example, a condition A or B issatisfied by any one of the following: A is true (or present) and B isfalse (or not present), A is false (or not present) and B is true (orpresent), and both A and B are true (or present). As used herein,including the claims that follow, a term preceded by “a” or “an” (and“the” when antecedent basis is “a” or “an”) includes both singular andplural of such term, unless clearly indicated within the claim otherwise(i.e., that the reference “a” or “an” clearly indicates only thesingular or only the plural). Also, as used in the description hereinand throughout the claims that follow, the meaning of “in” includes “in”and “on” unless the context clearly dictates otherwise.

It will be appreciated that one or more of the elements depicted in thedrawings/figures can also be implemented in a more separated orintegrated manner, or even removed or rendered as inoperable in certaincases, as is useful in accordance with a particular application.Additionally, any signal arrows in the drawings/Figures should beconsidered only as exemplary, and not limiting, unless otherwisespecifically noted.

What is claimed is:
 1. A method for gesture recognition comprising:detecting one or more gesture-related signals using the associatedplurality of detection sensors; and evaluating a gesture detected fromthe one or more gesture-related signals using an automatic recognitiontechnique to determine if the gesture corresponds to one of apredetermined set of gestures.
 2. A method in accordance with claim 1,wherein evaluating the gesture includes determining a start and a stopof a gesture.
 3. A method in accordance with claim 1, wherein evaluatingthe gesture includes determining a stop of a gesture.
 4. A method inaccordance with claim 1, wherein in determining a start of the gesture,a start is determined if the distance between the target object and atleast one sensor decreases and the distance between the target objectand at least one sensor increases, and a short term variance or anequivalent measure over a predetermined plurality of signal samples isless than a threshold.
 5. A method in accordance with claim 1, wherein astop of a the gesture is determined if at a given time the distancesbetween the target object and all sensors decrease, and/or a short termvariance or an equivalent measure over a predetermined plurality ofsignal samples is less than a threshold, and/or the signal changes areless than a predetermined threshold for a predetermined plurality ofsignal samples after the given time.
 6. A method in accordance withclaim 1, wherein each gesture is represented by one or more HiddenMarkov Models (HMM).
 7. A method in accordance with claim 6, whereinevaluating a gesture includes evaluating probability measures for one ormore HMMs.
 8. A method in accordance with claim 6, wherein the featuresto which the HMMs' observation matrices are associated are non-quantizedor quantized sensor signal levels, x/y/z position, distances, direction,orientation, angles and/or 1^(st), 2^(nd) or higher order derivatives ofthese with respect to time, or any combination thereof.
 9. A method inaccordance with claim 6, wherein the features are the 1^(st) derivativesof the sensor signal levels quantized to two quantization levels.
 10. Amethod in accordance with claim 7, wherein for each new signal sample orfeature, the probability of each Hidden Markov Model is updated.
 11. Amethod in accordance with claim 10, wherein if the probability of aHidden Markov Model exceeds a pre-defined threshold, the recognition isstopped.
 12. A system for gesture recognition using a alternatingelectric field generated by a sensor arrangement and associateddetection electrodes, wherein electrode signals are evaluated usingHidden Markov Models, wherein start and stop criteria for determinationof a gesture are determined.
 13. The system according to claim 12,wherein the feature sequences used to evaluate the Hidden Markov Models'probabilities are the 1^(st) derivatives of the sensor signal levelsquantized to two quantization levels.
 14. A system for gesturerecognition comprising: a sensor arrangement for detecting one or moregesture-related signals using the associated plurality of detectionsensors; and a module for evaluating a gesture detected from the one ormore gesture-related signals using an automatic recognition technique todetermine if the gesture corresponds to one of a predetermined set ofgestures.
 15. A system in accordance with claim 14, wherein a start ofthe gesture is determined if the distance between the target object andat least one sensor decreases and the distance between the target objectand at least one sensor increases and a short term variance or anequivalent measure over a predetermined plurality of signal samples isless than a threshold.
 16. A system in accordance with claim 14, whereina stop of the gesture is determined if at a given time, the distancesbetween the target object and all sensors decrease and/or a short termvariance or an equivalent measure over a predetermined plurality ofsignal samples is less than a threshold, and/or the signal changes areless than a predetermined threshold for a predetermined plurality ofsignal samples after the given time.
 17. A system in accordance withclaim 14, wherein each gesture is represented by one or more HiddenMarkov Models.
 18. A system in accordance with claim 17, whereinevaluating a gesture includes evaluating probability measures for one ormore Hidden Markov Models.
 19. A system in accordance with claim 17,wherein the features to which the HMMs' observation matrices areassociated are non-quantized or quantized sensor signal levels, x/y/zposition, distances, direction, orientation, angles and/or 1^(st),2^(nd) or higher order derivatives of these with respect to time, or anycombination thereof.
 20. A system in accordance with claim 17, whereinthe features are the 1^(st) derivatives of the sensor signal levelsquantized to two quantization levels.
 21. A system in accordance withclaim 18, wherein for each new signal sample or feature, the probabilityof each Hidden Markov Model is updated.
 22. A system in accordance withclaim 21, wherein if the probability of a Hidden Markov Model exceeds apre-defined threshold, the recognition is stopped.
 23. A computerreadable medium including one or more non-transitory machine readableprogram instructions for receiving one or more gesture-related signalsusing a plurality of detection sensors; and evaluating a gesturedetected from the one or more gesture-related signals using an automaticrecognition technique to determine if the gesture corresponds to one ofa predetermined set of gestures.
 24. A computer readable medium inaccordance with claim 23, wherein a start of a gesture is determined ifthe distance between the target object and at least one sensor decreasesand the distance between the target object and at least one sensorincreases, and a short term variance or an equivalent measure over apredetermined plurality of signal samples is less than a threshold. 25.A computer readable medium in accordance with claim 23, wherein a stopof the gesture is determined if at a given time, the distances betweenthe target object and all sensors decrease and/or a short term varianceor an equivalent measure over a predetermined plurality of signalsamples is less than a threshold, and/or the signal changes are lessthan a predetermined threshold for a predetermined plurality of signalsamples after the given time
 26. A computer readable medium inaccordance with claim 23, wherein each gesture is represented by one ormore Hidden Markov Models (HMM).
 27. A computer readable medium inaccordance with claim 26, wherein evaluating a gesture includesevaluating a probability measure for one or more HMMs
 28. A computerreadable medium in accordance with claim 26, wherein the features towhich the HMMs' observation matrices are associated are non-quantized orquantized sensor signal levels, x/y/z position, distances, direction,orientation, angles and/or 1 ^(st), 2^(nd) or higher order derivativesof these with respect to time, or any combination thereof.
 29. Acomputer readable medium in accordance with claim 26, wherein thefeatures are the 1^(st) derivatives of the sensor signal levelsquantized to two quantization levels.
 30. A computer readable medium inaccordance with claim 27, wherein for each new signal sample or feature,the probability of each Hidden Markov Model is updated.
 31. A computerreadable medium in accordance with claim 30, wherein if the probabilityof Hidden Markov Model exceeds a pre-defined threshold, the recognitionis stopped.